import 'package:flutter/material.dart';

main() {
  // runApp(TabbarDemo());
  runApp(TabbarDemo2());
}

//
// class TabbarDemo extends StatefulWidget {
//   const TabbarDemo({Key? key}) : super(key: key);
//
//   @override
//   _TabbarDemoState createState() => _TabbarDemoState();
// }
//
// class _TabbarDemoState extends State<TabbarDemo> {
//
//   List<Tab> tabs = [
//     Tab(text: '明教',),
//     Tab(text: '霸道',),
//     Tab(text: '天策',),
//     Tab(text: '纯阳',),
//     Tab(text: '少林',),
//     Tab(text: '长健',),
//     Tab(text: '七秀',),
//     Tab(text: '五毒',),
//     Tab(text: '天门',),
//     Tab(text: '唐门',),
//     Tab(text: '武当',),
//     Tab(text: '昆仑',),
//   ];
//
//   @override
//   Widget build(BuildContext context) {
//     return MaterialApp(
//       theme: ThemeData(primaryColor: Colors.greenAccent),
//       home: DefaultTabController(
//         length: tabs.length,
//         child: Scaffold(
//           appBar: AppBar(
//             title: Text('tabbar demo'),
//             bottom: TabBar(
//               tabs: tabs,
//               isScrollable: true,
//             ),
//           ),
//
//           body: TabBarView(
//             children: tabs.map((e) {
//               return Center(child: Text('${e}'),);
//             }).toList(),
//           ),
//         ),
//       )
//     );
//   }
// }
//
//
// class MyTablebar extends StatefulWidget {
//   const MyTablebar({Key? key}) : super(key: key);
//
//   @override
//   _MyTablebarState createState() => _MyTablebarState();
// }
//
// class _MyTablebarState extends State<MyTablebar> {
//   @override
//   Widget build(BuildContext context) {
//     return Container();
//   }
// }

class TabbarDemo2 extends StatefulWidget  {



  const TabbarDemo2({Key? key}) : super(key: key);

  @override
  _TabbarDemo2State createState() => _TabbarDemo2State();
}

class _TabbarDemo2State extends State<TabbarDemo2> with SingleTickerProviderStateMixin {

  List<Tab> tabs = [
    Tab(
      text: '关注',
    ),
    Tab(
      text: '热门',
    ),
    Tab(
      text: '科技',
    ),
    Tab(
      text: '搞笑',
    ),
    Tab(
      text: '社会',
    ),
    Tab(
      text: '法律',
    ),
    Tab(
      text: '人文',
    ),
  ];
  TabController? _tabController;
  
  @override
  initState() {
    _tabController = new TabController(length: tabs.length, vsync: this);
    
  }
  
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Row(
            children: [
              Expanded(child: TabBar(
                tabs: tabs,
                controller: _tabController,
                isScrollable: true,
              ))
            ],
          ),

          // bottom: TabBar(
          //   tabs: tabs,
          //   controller: _tabController,
          //   isScrollable: true,
          // ),
        ),
        body: TabBarView(
          controller: _tabController,
          children: tabs.map((e) {
            return Center(child: Text(e.text??"其他"),);
          }).toList(),
        ),
      ),
    );
  }
}

